//package main
//
//import "fmt"
//
////
//type car interface {
//	run()
//}
//
//type baoShiJie struct {
//}
//func (b *baoShiJie)run(){
//	fmt.Println("保时捷最快")
//}
//type faLaLi struct {
//}
//func (f *faLaLi)run(){
//	fmt.Println("法拉利最快")
//}
//type benChi struct {
//}
//func (bc *benChi)run(){
//	fmt.Println("奔驰最快")
//}
//
////func drive(c car){
////	c.run()
////}
//func main(){
//	var f1 = baoShiJie{
//	}
//	var f2 = faLaLi{
//	}
//	var f3 = faLaLi{
//	}
//	f1.run()
//	f2.run()
//	f3.run()
//
//}
package main

import "fmt"

func main(){
	fun1(1)
	fun1("1")
}
func fun1(a interface{}){
	switch t := a.(type){
	case string:
		fmt.Println("这是一个string",t)
	case int:
		fmt.Println("这是一个int",t)
	}
}